package algo3.pruebas.armasTest;

import junit.framework.TestCase;
import algo3.modelo.Posicion;
import algo3.modelo.armas.Arma;
import algo3.modelo.armas.DisparoConvencional;
import algo3.modelo.armas.MinaSubmarinaPorContacto;
import algo3.modelo.armas.MinaSubmarinaPuntualConRetardo;
import algo3.modelo.armas.MinaSubmarinaTripleConRetardo;
import algo3.modelo.armas.ReflexionDeArma;

public class pruebaReflexionDeArmas extends TestCase {

	public void testDevolverUnDisparoConvencional(){
		Posicion pos = new Posicion(4,5);
		Arma arma = ReflexionDeArma.obtenerArmaPorReflexion("DisparoConvencional", pos);
		assertEquals(arma.getClass(),DisparoConvencional.class);
	}
	
	public void testDevolverUnaMinaSubmarinaPorContacto(){
		Posicion pos = new Posicion(4,5);
		Arma arma = ReflexionDeArma.obtenerArmaPorReflexion("MinaSubmarinaPorContacto", pos);
		assertEquals(arma.getClass(),MinaSubmarinaPorContacto.class);
	}
	
	public void testDevolverUnaMinaSubmarinaTripleConRetardo(){
		Posicion pos = new Posicion(4,5);
		Arma arma = ReflexionDeArma.obtenerArmaPorReflexion("MinaSubmarinaTripleConRetardo", pos);
		assertEquals(arma.getClass(),MinaSubmarinaTripleConRetardo.class);
	}
	
	public void testDevolverUnaMinaSubmarinaPuntualConRetardo(){
		Posicion pos = new Posicion(4,5);
		Arma arma = ReflexionDeArma.obtenerArmaPorReflexion("MinaSubmarinaPuntualConRetardo", pos);
		assertEquals(arma.getClass(),MinaSubmarinaPuntualConRetardo.class);
	}
	
	
}
